#include <iostream>
#include <vector>

using namespace std;
//vector容量和大小:对vector容器的容量和大小操作
//函数原型：
//
//1、empty();                     //判断容器是否为空
//2、capacity();                  //容器的容量
//3、size();                      //返回容器中元素的个数
//4、resize(int num);             //重新指定容器的长度为num，若容器变长，则以默认值填充新位置。
//如果容器变短，则末尾超出容器长度的元素被删除。
//5、resize(int num, elem);       //重新指定容器的长度为num，若容器变长，则以elem值填充新位置。
//如果容器变短，则末尾超出容器长度的元素被删除

void printV(const vector<int> &v) {
    for (vector<int>::const_iterator it = v.begin(); it != v.end(); ++it) {
        cout << *it << " ";
    }
    cout << endl;
}

void test() {
    vector<int> v1;
    for (int i = 0; i < 10; ++i) {
        v1.push_back(i * i);
    }
    printV(v1);
    if(v1.empty()){//为真 代表容器为空
        cout<<"容器为空"<<endl;
    } else{
        cout<<"容器不为空"<<endl;
        cout<<"容量为"<<v1.capacity()<<endl;
        cout<<"大小为"<<v1.size()<<endl;
    }
    v1.resize(18,66);//resize 重新指定大小 ，若指定的更大，默认用0填充新位置，可以利用重载版本替换默认填充
    printV(v1);
    v1.resize(12);//resize 重新指定大小 ，若指定的更小，超出部分元素被删除
    printV(v1);
}

int main() {
    test();
    return 0;
}